package com.zyf.lj.mapper;

import com.zyf.lj.entity.Major;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 专业Mapper接口
 */
@Mapper
public interface MajorMapper {
    
    /**
     * 查询所有专业信息
     * @return 专业列表
     */
    List<Major> findAllMajors();
    
    /**
     * 根据ID查询专业信息
     * @param id 专业ID
     * @return 专业信息
     */
    Major findMajorById(@Param("id") Integer id);
    
    /**
     * 根据学院ID查询专业列表
     * @param collegeId 学院ID
     * @return 专业列表
     */
    List<Major> findMajorsByCollegeId(@Param("collegeId") Integer collegeId);
    
    /**
     * 查询专业详细信息（包括课程和就业方向）
     * @param id 专业ID
     * @return 专业详细信息，包含collegeId
     */
    Major findMajorDetailById(@Param("id") Integer id);
    
    /**
     * 查询专业的课程列表
     * @param majorId 专业ID
     * @return 课程列表
     */
    List<String> selectCoursesByMajorId(@Param("majorId") Integer majorId);
    
    /**
     * 查询专业的就业方向列表
     * @param majorId 专业ID
     * @return 就业方向列表
     */
    List<String> selectJobsByMajorId(@Param("majorId") Integer majorId);
} 